package com.gitee.qdbp.general.thirdpart.error;

import com.gitee.qdbp.able.result.IResultMessage;

/**
 * 错误返回码枚举类
 *
 * @author zhaohuihua
 * @version 170814
 */
public enum PaymentErrorCode implements IResultMessage {

    /** 支付处理失败 **/
    PAYMENT_HANDLE_ERROR("支付处理失败"),
    /** 签名错误(商户向支付平台发起请求,支付平台返回签名错误,有可能是密钥不正确) **/
    PAYMENT_SIGNATURE_ERROR("签名错误"),
    /** 签名校验未通过 **/
    PAYMENT_SIGNATURE_CHECK_FAILED("签名校验未通过"),
    /** 通知回调参数校验未通过 **/
    PAYMENT_PASSBACK_CHECK_FAILED("通知回调参数校验未通过"),
    /** 订单支付中 **/
    PAYMENT_TRADE_STATE_PAYING("订单支付中"),
    /** 订单已支付 **/
    PAYMENT_TRADE_STATE_PAID("订单已支付"),
    /** 订单已关闭 **/
    PAYMENT_TRADE_STATE_CLOSED("订单已关闭"),
    /** 余额不足 **/
    PAY_USER_NOT_SUFFICIENT_FUNDS("余额不足");

    /** 错误描述 **/
    private final String message;

    private PaymentErrorCode(String message) {
        this.message = message;
    }

    @Override
    public String getCode() {
        return this.name();
    }

    @Override
    public String getMessage() {
        return message;
    }
}
